查看原文
其他

Github标星5.2k+!开源、强大的WAF(web防火墙)VeryNginx!


 读者福利!2 TB 各类技术资源免费赠送 


之前工作中经常在 Nginx 里面配置各种规则,感觉 Nginx 功能强大但并不是很易用。于是就觉得可以写一个强大而且对人类友好的 Nginx,前前后后写了一个多月,总算是在过年之前完成了,逻辑通过 lua 实现,嵌入到 Nginx 中,自带前端界面。

传送门:https://github.com/alexazhou/VeryNginx

VeryNginx = Very powerful and friendly nginx


VeryNginx描述

VeryNginx基于lua_nginx_module(openrestry)。它实现了高级防火墙(waf),访问统计信息和其他一些功能。它增强了Nginx的功能,并提供了友好的Web界面。

在 web 界面里面修改配置后,保存后即刻生效,并不需要重启 Nginx 或者 reload 。


主要功能如下


Nginx 运行状态分析

  • 每秒请求数

  • 响应时间

  • 网络流量

  • 网络连接数


请求过滤

VeryNginx 可以基于按照以下信息对请求进行过滤:

  • IP

  • UserAgent

  • 请求路径(URI)

  • 请求参数

通过配置过滤规则,可以阻止 SQL 注入, Git , SVN 文件泄露,拦截扫描工具等

统计功能

VeryNginx可以记录URI的请求,包括每个URI的这些数据:

  • 所有请求计数

  • 每个状态码的请求计数

  • 总字节数

  • 平均字节

  • 总响应时间

  • 平均响应时间

附 VeryNginx 的界面图

安装Nginx / OpenResty


VeryNginx基于OpenResty,因此您需要首先安装它。但是请不要担心,VeryNginx提供了一个脚本来自动执行此操作。


python install.py install


只需运行此命令,openresty和verynginx将自动安装。VeryNginx可以自动安装openresty,因此您无需手动安装nginx(openresty)。


编辑nginx配置文件


VeryNginx的配置文件是/opt/verynginx/openresty/nginx/conf/nginx.conf,这是一个演示。它只是可以让verynginx运行,因此您可以看到verynginx的仪表板。如果您想进一步配置它,则需要编辑该文件并向其中添加自己的nginx配置。此配置文件添加了三个include命令,以将verynginx嵌入到原始nginx(openresty)中


  • 包括/opt/verynginx/verynginx/nginx_conf/in_external.conf;

  • 包括/opt/verynginx/verynginx/nginx_conf/in_http_block.conf;

  • 包括/opt/verynginx/verynginx/nginx_conf/in_server_block.conf;


这些include命令被放置在一个块的外部,http内部配置块被阻止,服务器配置块被放置在内部,Remenber在修改时保留这三行。如果添加新的服务器配置块或http配置块,还需要在其中添加合适的include行。


启动/停止/重启服务


#Start Service
/opt/verynginx/openresty/nginx/sbin/nginx

#Stop Service

/opt/verynginx/openresty/nginx/sbin/nginx -s stop

#Restart Service

/opt/verynginx/openresty/nginx/sbin/nginx -s reload


WEB界面配置VeryNginx


服务开始运行后,您可以在控制台上查看服务器状态并进行配置。

WEB的地址为http://{{your_machine_address}}/verynginx/index.html。

默认用户和密码为verynginx/ verynginx。您应该现在就可以完成所有选项。


提示

  • 保存后,新配置将立即生效。无需重新启动或重新加载nginx。

  • 保存配置时,VeryNginx会将所有配置写入/opt/verynginx/verynginx/configs/config.json。


更新VeryNginx


新版本的VeryNginx可能支持某些新功能或修复了一些旧错误。如果要更新本地安装的VeryNginx,只需要将最新代码从github拉到本地,然后运行以下命令:


#Update VeryNginx
python install.py update verynginx

#Update OpenResty
python install.py update openresty


install.py将在更新期间保留旧的config.json和nginx.conf。这样您就不会在更新后丢失配置。


VeryNginx安装配置都非常的简单,而且还得供友好的WEB界面,配置也比较方便,是一款实用的、强大的WAF功能软件。


各位读者老铁们,点个在看、转发分享支持一波吧!!


最新整理的 2TB 技术干货:包括系统运维、数据库、redis、MogoDB、电子书、Java基础课程、Java实战项目、架构师综合教程、架构师实战项目、大数据、Docker容器、ELK Stack、机器学习、BAT面试精讲视频等。在「 民工哥技术之路」微信公众号对话框回复关键字:1024 即可获取全部资料。




☆ END ☆

精彩文章推荐:


牛逼!这位程序员开发出一“舔狗”必备神器(代码已开源)!

码云Gitee遭遇疯狂DDoS攻击,官方发布解决方法并已报案

好用、免费!可监控电脑几乎一切操作

必备技能!Shell编程实战案例分享(PDF版)!

这家公司宕机事故处罚也太狠了!

Nginx 又一牛X的功能!流量拷贝

系统之眼!Linux系统性能监控工具Glances

点击【阅读原文】发现更多精彩

点个在看、转发支持一下吧↓↓↓

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存